package com.mlr.mlrcturebackend.mapper;

import com.mlr.mlrcturebackend.model.entity.PictureTag;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author mlr
 * @description 针对表【picture_tag(图片标签关联表)】的数据库操作Mapper
 * @Entity com.mlr.mlrcturebackend.model.entity.PictureTag
 */
@Mapper
public interface PictureTagMapper extends BaseMapper<PictureTag> {

    /**
     * 根据图片ID获取标签ID列表
     * @param pictureId 图片ID
     * @return 标签ID列表
     */
    List<Long> selectTagIdsByPictureId(@Param("pictureId") Long pictureId);

    /**
     * 根据标签ID获取图片ID列表
     * @param tagId 标签ID
     * @return 图片ID列表
     */
    List<Long> selectPictureIdsByTagId(@Param("tagId") Long tagId);

    /**
     * 批量添加图片标签关联
     * @param pictureTagList 图片标签关联列表
     * @return 影响行数
     */
    int batchInsert(@Param("list") List<PictureTag> pictureTagList);
}